perm filename PUBSUM.LES[UP,DOC]1 blob sn#020249 filedate 1973-01-14 generic text, type T, neo UTF8
1973 January 10          PUB REFERENCE SUMMARY	           L. Earnest

                         Initial Conditions

.DEVICE LPT;  PAGE FRAME 53 HIGH 69 WIDE;  AREA TEXT LINES 4 TO 51
.TITLE AREA HEADING LINES 1 TO 3;  TITLE AREA FOOTING LINE 53
.NOFILL PREFACE 0;  FILL PREFACE 1;  SINGLE SPACE
.ADJUST RETAIN TABSPACE CRSPACE APART WIDEN INDENT 0,0,0
.AT NULL ⊂ IF FILLING THEN BREAK ELSE SKIP 1 ⊃
.TURN ON ".!?-";  TURN OFF "αβπ#{\∂←→∞_∪↓↑&"
.COUNT PAGE
.YEAR ← <current year>; MONTH ← <current month>; DAY ← <current day>
.TIME ← <current time>; DATE ← MONTH & " " & DAY & ", " & YEAR

                               Areas				Page

.PAGE FRAME <e> HIGH <e> WIDE		defines page size	  52
.[ TEXT | TITLE ] AREA <name> [ LINE[S] <e> [ TO <e> ]]
.    [ CHAR[S] <e> [ TO <e> ]] [ IN <e> COLUMNS <e> WIDE | APART ]
					declares an area	  37
.PLACE <area name>			begins output to area	  39
.EVERY | EVEN | ODD    HEADING | FOOTING (<text>,<text>,<text>)
					standard heading/footing  46

                              Portions

.PORTION <name>				starts new portion	  47
.INSERT <portion name>			relocates portion here	  47
.SEND <portion name> [;] <template>	sends text	          48
.RECEIVE				receives text for portion 49

                              Footnotes

.SEND FOOT [;] <template>		sends footnote		  63
    where <template> → ⊂ <piece of program with each ∃ or
			  unpaired ⊂ or ⊃ preceded by ∃ > ⊃

                              Counters

.COUNT <name> [ INLINE ][ FROM <e> ][ TO <e> ][ BY <e> ]
.     [ IN <counter name> ] [ PRINTING  <e> | <template> ]
					declare counter		  41
.NEXT <counter name>			step counter		  43

                          Vertical Position

.[GROUP] SKIP <se>			skip lines		  51
.SKIP TO LINE <e>			skip to line		  51
.SKIP TO COLUMN <e>			skip to column		  51
.SINGLE | DOUBLE | TRIPLE  SPACE	interline spacing	  37
.PREFACE <e>				interparagraph spacing	  36
.GROUP .... APART			group lines on same page  15

                            Justification			Page

.VERBATIM | FILL | NOFILL | CENTER | FLUSH LEFT | FLUSH RIGHT |
.    JUSTJUST | SUPERIMPOSE <e>	    select justification mode  13-15

.TURN ON | OFF "<string>"	  turn control characters on/off  20
.TURN ON "<char>" FOR "<char>"	substitute one char. for another  20
.TURN OFF		      turn off the last things turned on  20

When not in VERBATIM mode (see pages 17-19):
	α  quote	\  tab		↓_ underbar (in form ↓_..._↓)
	β  word break	∂  move		∪  one-word underbar
	π  print funny  ←  center	↓  subscript
	#  sneaky space →  right flush	↑  superscript
	{  start	∞  repeat	&  align
	     command
.COMPACT  |  RETAIN			redundant space control	  15
.BREAK	  |  CONTINUE			end of paragraph	  52
.TABBREAK |  TABSPACE			may break on initial tab  14
.CRBREAK  |  CRSPACE			may break on each line	  14
.WIDEN	  |  NARROW <e> [, <e>]		reset or set margins	  38
.TABS <e> [, <e> .... ]			sets tab stops		  35
PREFACE <e>			skip <e> lines before paragraph	  36

When in FILL, NOFILL, JUSTJUST, or SUPERIMPOSE modes:
.INDENT <e> [, <e> [, <e>]]		select indentation	  35

When in FILL mode:
	.!?  end of sentance		-  hyphen		  17
.ADJUST   |  NOJUST			justify or not		  13

                               Macros

.[ RECURSIVE ] MACRO <name> [<formal parameters>] [;] <template>
					macro declaration	  25
    where <formal parameters> → ( [ε]<identifier>, ...)
.<macro name> [(][ <param> [, <param>] ... [)] ]     macro call	  25
    where <param> → "<string in one line with quotes doubled>"
		  → |<string in which no vertical bar appears>|
		  → <string on one line not starting with " or | and
			containing no , or )>

                              Responses

AT "<string>" [<parameter scan>]  <template>	   text response  60
    where <parameter scan> → <name> "<string>" <name> "<string>" ...
AT <integer> | PAGEMARK | NULL  [;] <template>	   text response  60
BEFORE | AFTER  <counter name> | <area name> [;] <template>
					     transition response  61

                               Labels				Page

.<label>: [NEXT] <counter id> 		labelled counter	  57
.<label>: <e> 				labelled expression	  57
.<label>: } <text line>  		text label		  57
  { [<e>] <label id>}  |  {<counter id>[!] <label>}  |
     { "<counter id>[!]" <label id> }	cross-reference		  56

                               Control 

.......}				change to text mode	  20
.COMMAND CHARACTER "<char>"		change command character  12
.REQUIRE "<file name>" SOURCE_FILE	insert file here	  51
.DEVICE LPT | MIC | TTY			output device		  53
.COMMENT <anything but semicolon> ;	comment			  55
.<<anything but 2 greater-thans in a row>>  another comment	  55

                          Program Structure

.BEGIN [<n>] <s>; <s>; ... END [<n>]	block - modes are local	  33
.ONCE <s>; <s>; ...			one-paragraph block	  34
.START [<n>] <s>; <s>; ... END [<n>]	clump - modes continue	  33
.IF <e> THEN <s> [ ELSE <s> ]		conditional statement	  43
.<name> ← <e>				assignment statement	  43
  {<e>}					computed text		  21

                             Expressions

.VARIABLE <name> [, <name> ... ]     local variable declaration	  28
<constant> → "<string with quotes doubled>"			  31
	   → <string of decimal digits>
	   → '<string of octal digits>
Expressions are formed with the following operator precedence:    30
	( )
	[ ]
unary	+ -   ABS  LENGTH  ↑   (the ↑ capitalizes its operand)
	* /   DIV  MOD     &   (19 & 76 makes 1976)
binary	+ -   EQV  ≡  XOR  ⊗
	MAX   MIN
	EVEN  ODD
	> < = LEQ ≤  GEQ ≥  NEQ ≠     (= and ≠ compare strings)
	¬  NOT
	∧  AND
	∨  OR
<assignment expression> → <var. name> ← <e>		
<conditional expression> → IF <e> THEN <se> ELSE <e>
<substring expression>   → <val>[<e> TO <e>]
			 → <val>[<e> FOR <e>]
			 → <val>[<e>]		(same as [<e> FOR 1])
	     where <val> → <variable name>
			 → <constant>


                         Read-only Variables

CHAR	number of characters so far in output line
LINE	number of the last line output (0 at beginning of column)
COLUMN	number of last column to which output went (0 if fresh page)
CHARS	number of character positions remaining on current line
LINES	number of unused lines in current column
COLUMNS number of unused columns on current page
TOPLINE	line number that starts the current area
FILLING	0 if not in FILL mode, 1 if in ADJUST, -1 if NOJUST
NULL	empty string
TRUE	-1
FALSE	0

                        Read-write Variables

DATE, TIME, YEAR, MONTH, DAY  initialized to date/time of compilation
FILE	name of your first manuscript file
FOOTSEP prints above the first footnote in each column (initially NULL)
INDENT1, INDENT2, INDENT3  control paragraph indentation (see page 36)
LMARG, RMARG  left and right margins (see page 39)
PAGE	current page number
_SKIP_	peculiar SAIL variable
SPREAD	number of blank lines between successive output lines